/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.tbp.model.domain;

import br.com.tbp.model.domain.constant.CondicaoDaLinha;
import java.util.Date;

/**
 *
 * @author Diego Freire
 */
public class ItemDePedido {

    private long id;
    private Produto produto;
    private int qtde;
    private CondicaoDaLinha condicao;
    private boolean portIn;
    private int qtePortIn;
    private Date dataAtivacao;
    private int qtdeAtivada;
    private Pedido pedido;

    public ItemDePedido(Produto produto, int quantidade) {
        this.produto = produto;
        this.qtde = quantidade;
    }

    public ItemDePedido(Produto produto, int quantidade, boolean portIn, int qtdePortIn) {
        this(produto, quantidade);
        this.portIn = portIn;
        this.qtePortIn = qtdePortIn;
    }

    public Produto getProduto() {
        return produto;
    }

    public void setProduto(Produto produto) {
        this.produto = produto;
    }

    public int getQtde() {
        return qtde;
    }

    public void setQuantidade(int quantidade) {
        this.qtde = quantidade;
    }

    @Override
    public boolean equals(Object obj) {
        if (obj == null) {
            return false;
        }
        if (getClass() != obj.getClass()) {
            return false;
        }
        final ItemDePedido other = (ItemDePedido) obj;
        if (this.produto != other.produto && (this.produto == null || !this.produto.equals(other.produto))) {
            return false;
        }
        return true;
    }

    @Override
    public int hashCode() {
        int hash = 5;
        hash = 47 * hash + (this.produto != null ? this.produto.hashCode() : 0);
        return hash;
    }

    public CondicaoDaLinha getCondicao() {
        return condicao;
    }

    public void setCondicao(CondicaoDaLinha condicao) {
        this.condicao = condicao;
    }

    public boolean isPortIn() {
        return portIn;
    }

    public void setPortIn(boolean portIn) {
        this.portIn = portIn;
    }

    public int getQtePortIn() {
        return qtePortIn;
    }

    public void setQtePortIn(int qtePortIn) {
        this.qtePortIn = qtePortIn;
    }

    public Date getDataAtivacao() {
        return dataAtivacao;
    }

    public void setDataAtivacao(Date dataAtivacao) {
        this.dataAtivacao = dataAtivacao;
    }

    public int getQtdeAtivada() {
        return qtdeAtivada;
    }

    public void setQtdeAtivada(int qtdeAtivada) {
        this.qtdeAtivada = qtdeAtivada;
    }

    public Pedido getPedido() {
        return pedido;
    }

    public void setPedido(Pedido pedido) {
        this.pedido = pedido;
    }

    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }
}
